MERA: Meta Language for Software Engineering
نویسندگان
چکیده
A unique feature of MERA is that it can be used to define many different graphical languages by creating a meta-graph in MERA that describes the formalism of the specific graphi-cal language. Therefore, for a specific purpose, a specific MERA is generated. This approach is superior than having a super set of multiple languages which increases chance of the user being overwhelmed by the complexity of the language definition itself. Like the CAKE (Rich, 1991) representation language, the MERA language includes many features that are more commonly found in artificial intelligence knowledge representation languages. However, whereas CAKE applies AI techniques of truth maintenance, many-sorted logic, and frames in a multi-layered architecture to software engineering , MERA applies semantic networks, sets, ontological markers for intensionality, and user-adaptation to visual representation of both software engineering information as well as AI natural language processing data such as syntax and semantics. Following the entity-relationship data model (Chen, 1976), which presents a unified view of database information, the basic building blocks of MERA are entities, relations, and attributes. Entities are represented as an icon and relations as a line (solid or dotted). Attributes are name-value pairs and are associated with objects , which are defined to be all entities and relations. Attributes have type constraints, range constraints on numeric types, a constraint on when values are required, a set constraint that specifies whether an attribute can consist of a set of values, and an optional default value. Relations have a source and a sink which are objects, so a relation can be used to relate two other relations (or even itself). Objects (entities and relations) have names and constraints on when a name is required. Relations also have constraints on the types of their sources and sinks, connectiv-ity (e.g. 1-m means that any object can serve as the source of only one such relation, but many such relations and sink into one object), reflexivity (whether an object can serve as both the source and sink of the same relation), and multiple (whether more than one such relation can connect the same two source and sink objects). An example of a MERA graph is shown in Figure 1. This MERA is a versatile graphical language which can be used for modeling and analysis of the user requirements, for building a prototype, for representing designer's knowledge , for controlling design process, etc. The current version of MERA …
منابع مشابه
Metamodeling and Language Engineering
Language Engineering aims at providing advanced techniques to design, implement and maintain languages or metalanguages. The Meta-Modeling Framework provides a method applying Object-Oriented modeling to the de nition of languages, as well as a powerful metacircular Meta-Modeling Language based on OCL, allowing language engineers to de ne high-quality languages at low cost. In order to perform ...
متن کاملA Hybrid Meta-heuristic Approach to Cope with State Space Explosion in Model Checking Technique for Deadlock Freeness
Model checking is an automatic technique for software verification through which all reachable states are generated from an initial state to finding errors and desirable patterns. In the model checking approach, the behavior and structure of system should be modeled. Graph transformation system is a graphical formal modeling language to specify and model the system. However, modeling of large s...
متن کاملDefining Software Process Model Constraints with Rules Using OWL and SWRL
The Software & Systems Process Engineering meta-model (SPEM) allows the modelling of software processes using OMG (Object Management Group) standards such as the MOF (MetaObject Facility) and UML (Unified Modelling Language) making possible to represent software processes using tools compliant with UML. Process definition encompasses both the static and dynamic structure of roles, tasks and wor...
متن کاملAdvancing Object-Oriented Standards Toward Agent-Oriented Methodologies: SPEM 2.0 on SODA
Building ad-hoc design processes and methodologies has become a key challenge in Software Engineering, and several efforts are being made for developing appropriate meta-models both for methodologies and development processes. The Software Process Engineering Meta-model (SPEM) – an OMG objectoriented standard – is a natural candidate for representing, comparing and reusing design processes in a...
متن کاملPounamu: A meta-tool for exploratory domain-specific visual language tool development
Domain-specific visual language tools have become important in many domains of software engineering and end user development. However building such tools is very challenging with a need for multiple views of information and multi-user support, the ability for users to change tool diagram and meta-model specifications while in use, and a need for an open architecture for tool integration. We des...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1992